package com.smedi.ismedi.progress.api.dto.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 施工日志列表PC入参
 *
 * @author liaojiajie
 * @date 2022/09/20
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "施工日志列表入参(PC)")
public class ConstructionLogListRequest implements Serializable {

    /**
     * 头部id(项目id / 组织id)
     */
    @ApiModelProperty(value = "头部id(项目id / 组织id)")
    @NotNull
    private Long organizationOrProjectId;

    /**
     * 主体院id
     */
    @ApiModelProperty(value = "主体院id")
    private Long mainCourtyardId;

    /**
     * 项目id
     */
    @ApiModelProperty(value = "项目id")
    private Long projectId;
    /**
     * 类型（项目/组织）
     */
    @NotNull
    @ApiModelProperty(value = "头部id类型（project/organization）")
    private String type;
    /**
     * 记录人
     */
    @ApiModelProperty(value = "记录人")
    private String recordUser;

    /**
     * 状态 1、草稿；2、已发布；3、已审阅
     */
    @ApiModelProperty(value = "状态 1、草稿；2、已发布；3、已审阅")
    private Long status;

    /**
     * 日志开始时间
     */
    @ApiModelProperty(value = "日志开始时间")
    private String logStartTime;

    /**
     * 日志结束时间
     */
    @ApiModelProperty(value = "日志结束时间")
    private String logEndTime;
    /**
     * 记录开始时间
     */
    @ApiModelProperty(value = "记录开始时间")
    private String recordStartTime;

    /**
     * 记录结束时间
     */
    @ApiModelProperty(value = "记录结束时间")
    private String recordEndTime;

    /**
     * 分页页码
     */
    @ApiModelProperty(value = "分页页码")
    private Long offset;

    /**
     * 每页行数
     */
    @ApiModelProperty(value = "每页行数")
    private Long pageSize;

}
